package it.mercatino.command;

/**
 * Comando per l'aggiornamento dello stato di una registrazione.<br>
 * Usa un oggetto CambioStato come receiver.
 * 
 * @author Luvi
 * 
 * @see Command
 * 
 * @see CambioStato
 */
public class AggiornaStatoRegistrazione implements Command {	
	
	private String username;
	private String motivazione;
	private int stato;
	private CambioStato receiver;

	/**
	 * @param username
	 * @param motivazione
	 * @param stato
	 * @param receiver
	 */
	public AggiornaStatoRegistrazione(String username, String motivazione,
			int stato, CambioStato receiver) {
		this.username = username;
		this.motivazione = motivazione;
		this.stato = stato;
		this.receiver = receiver;
	}
	
	@Override
	public void execute() {
		
		receiver.aggiornaStatoRegistrazione(username, stato, motivazione);
		
	}

	/**
	 * @return the username
	 */
	public String getUsername() {
		return username;
	}

	/**
	 * @param username the username to set
	 */
	public void setUsername(String username) {
		this.username = username;
	}

	/**
	 * @return the motivazione
	 */
	public String getMotivazione() {
		return motivazione;
	}

	/**
	 * @param motivazione the motivazione to set
	 */
	public void setMotivazione(String motivazione) {
		this.motivazione = motivazione;
	}

	/**
	 * @return the stato
	 */
	public int getStato() {
		return stato;
	}

	/**
	 * @param stato the stato to set
	 */
	public void setStato(int stato) {
		this.stato = stato;
	}

	/**
	 * @return the receiver
	 */
	public CambioStato getReceiver() {
		return receiver;
	}

	/**
	 * @param receiver the receiver to set
	 */
	public void setReceiver(CambioStato receiver) {
		this.receiver = receiver;
	}

}
